System and method for serving content over a wide area network

ABSTRACT

A system and method is provided for using a DNS server operating on a wide area network to enable an authorized reception device to receive (or be provided with) restricted content data associated with a particular wide area network address and redefine the domain name associated with a particular wide area network address. In a preferred embodiment of the present invention, an authorization application is adapted to provide the reception device with user-verification data, receive from the reception device verification data, and provide the filtering application with authorization data. The filtering application, which operates similarly to prior art DNS server systems, is further adapted to receive filtered data (i.e., password-required data and/or pseudo-domain-name data) and authorization data in order to provide an IP address of the content server to the reception device via a wide area network, such as the Internet.

CROSS-REFERENCE TO RELATED APPLICATION

This application claims priority pursuant to 35 U.S.C. § 119(e) to U.S.Provisional Application No. 60/204,995, filed May 16, 2000, whichapplication is specifically incorporated herein, in its entirety, byreference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to filtering content data over a wide areanetwork and, more particularly, to a system and method for using a DNSserver operating on a wide area network to enable an authorizedreception device to receive (or be provided with) restricted contentdata associated with a particular wide area network address and redefinethe domain name associated with a particular wide area network address.

2. Description of Related Art

Wide area networks, such as the Internet, are commonly used to shareinformation between multiple computing devices. This is done by storinginformation at an address that is recognizable to a remote computingdevice, and linking that address to a name that is recognizable to aperson operating that remote computing device. With regard to theInternet, information is stored at Internet Protocol (IP) addresses, andthose IP addresses are linked to particular domain names. This linkedinformation (i.e., between IP addresses and particular domain names) isprovided to the multiple computing devices through the use of a domainname system (DNS) server.

DNS servers are generally used servers (i.e., used by more than oneremote computing device) that provide remote computing devices with IPaddress information. If a remote computing device is instructed togather information pertaining to a particular domain name, the remotecomputing device communicates with a DNS server to retrieve the IPaddress associated with that particular domain name. The DNS server usesa look-up table, which contains linked information between IP addressesand domain names, to determine what IP address is associated with thatparticular domain name. The DNS server then provides the proper IPadress to the remote computing device. The remote computing device canthen gather information (as originally instructed) by requesting theinformation from a content server operating on that IP address.

There are two main problems associated with such an information locationsystem. These problems stem from the fact that the remote computingdevices retrieve information in roughly the same manner. That is, eachremote computing device requests information from IP addresses that areprovided by generally used DNS servers. Thus, the first problemassociated with such a system is that each remote computing device mustinstall is own content blocking software in order to limit the natureand explicitness of the information that it is capable of retrieving.Without this content blocking software, particular individuals (e.g.,children, uninterested adults, etc.) can access (or be provided with)information of a sensitive nature (e.g., sex, violence, drugs, religion,etc.). The problem with using content blocking software is that it canbe expensive and can decreases the the processing speed of, andeliminate valuable memory space on the individual reception devices.Additionally, such software may eventually become outdated, may becumbersome to upgrade (e.g., difficult and/or time consuming), and mayeven be circumvented by a sophisticated user.

The second problem associated with such an information location systemis that all the remote computing devices must adhere to some industrystandard domain name system (i.e., linking fixed IP addresses topredefined individualized domain names) in order to retrieve (or beprovided with) information. Thus, a sports-minded individual on aparticular remote computing device who enjoys receiving information fromthe domain name “people.preview.news.basketball.sports.msnbc.com” mustcontinually type in theis cumbersome domain name in order to receiveinformation from the IP address associated with that domain name. If thesports-minded individual alters this domain name, either by accident(due to its cumbersome size), or intentionally (attempting to produce ashorter or more sensible name), the individual may be provided with anerror message or incorrect information from another IP address that isassociated with the incorrect domain name. Additionally, an individualattempting to distribute information over a particular wide areanetwork, such as the Internet, may have a hard time finding a domainname that is easy to remember, is related to his information, is notalready being used by another, and is not legally prohibited (e.g., dueto trademark law, unfair competition, etc).

Thus, a need and a desire exists to have a DNS server ssytem operatingon a wide area network that enables an authorized reception device toreceive (or be provided with) restricted content data associated with aparticular wide area network address and redefine the domain nameassociated with a particular wide area network address.

SUMMARY OF THE INVENTION

The present invention provides a system and method for using a DNSserver operating on a wide area network to enable an authorizedreception device to receive (or be provided with) restricted contentdata associated with a particular wide area network address and redefinethe domain name associated with a particular wide area network address.In a preferred embodiment of the present invention, a DNS server systemincludes a reception device, a content server, an authorization serverand a DNS server, where the authorization server further includes anauthorization memory device and an authorization application, and theDNS server further includes a memory device, a server, and a filteringapplication. The authorization application is adapted to provide thereception device with user-verification data, receive from the receptiondevice verification data (i.e., password data, user-identification data,and pseudo-domain-name data), and provide the filtering application withauthorization data. The filtering application, which operates similarlyto prior art DNS server systems, is further adapted to receive filtereddata (i.e., password-required data and/or pseudo-domain-name data) andauthorization data in order to provide an IP address of the contentserver to the reception device via a wide area network, such as theInternet.

If the filtering application receives password-required data pertainingto a particular domain name (e.g., “sex.com”), then the filteringapplication is further adapted to store a link between thepassword-required data and the pertaining domain name in the memorydevice. If a reception device subsequently requests the IP address forthe particular domain name (e.g., “sex.com”), then the filteringapplication is further adapted to provide the reception device with anIP address for the authorization server. The authorization applicationoperating on the authorization server is adapted to provide thereception with user-verification data, which may include, but is notlimited to, request-for-user-identification data (i.e., verifying a userthrough their user name), request-for-password data (i.e., verifying auser through a pre-selected password), or request-for-credit-card data(i.e., verifying a user through their credit card account). Theauthorization application is further adapted to receive verificationdata from the reception device, which may include, but is not limitedto, password data, user-identification data, (e.g., user name or creditcard information), and pseudo-domain-name data. If the authorizationapplication identifies the reception device as being an authorizedreception device (i.e., by verifying the received verification data),then the authorization application is adapted to provide the filteringapplication with authorization data (e.g., the IP address of thereception device) and redirect (or refresh) the reception device suchthat the reception device requests the IP address for the particulardomain name (e.g., “sex.com”) from the DNS server. The filteringapplication operating on the DNS server is further adapted to providethe reception device with the requested IP address after theauthorization data has been received.

If the filtering application receives pseudo-domain-name data (e.g.,“news”) pertaining to a particular domain name (e.g., “cnn.com”), thenthe filtering application is further adapted to store a link between thepseudo-domain-name data and the pertaining domain name in the memorydevice. If a reception device subsequently requests an IP address forthe pseudo-domain-name data (e.g., “news”), the reception device will beprovided with the IP address of the particular domain name (e.g.,“cnn.com”). Alternatively, if the filtering application has not receivedpseudo-domain-name data pertaining to a particular domain name, then thefiltering application may be adapted to provide the reception devicewith an IP address for the authorization server. The authorizationapplication operating on the authorization server may be adapted toprovide the reception device with user-verification data (as discussedabove) in order to link the pseudo-domain-name data (e.g., “news”) to aparticular user. This allows the authorization application (togetherwith the filtering application) to subsequently provide that particularuser with an IP address for the particular domain name (e.g., “cnn.com”)when the user requests an IP address for the pseudo-domain-name data(e.g., “news”).

The authorization application may further be adapted to receive (orgenerate) pseudo-linked data (which links pseudo-domain-name data todomain names) and circumventing data, such that the link between thepseudo-domain-name data and a particular domain name is circumvented.That is, the circumventing data may temporarily mask the pseudo-linkeddata, such that a reception device would have to provide the DNS serverwith the actual domain name in order to receive an IP address associatedwith that actual domain name.

In another embodiment of the present invention, the authorizationapplication is further adapted to provide a redirected URL (uniformresource locator) to the reception device after the reception device hasprovided verification data. This allows a content providing applicationoperating on the content server to recognize (or search for) theredirected URL (or a coded token within the redirected URL) beforeproviding a reception device with content data. It should be appreciatedthat the redirected URL (or a coded token within the redirected URL) mayprevent a reception device from receiving content data, may enable areception device to receive content data, or may enable a receptiondevice to receive a predefined level of content data. To prevent a userfrom easily circumventing this system, the content providing applicationmay further be adapted to deny requests for content data when therequest contains an IP address. To reward users, the content providingapplication may further be adapted to provide users with special savingsor benefits for using the DNS server or the pseudo-domain-name datacontained within the memory device of the DNS server.

A more complete understanding of the system and method for filteringcontent data over a wide area network will be afforded to those skilledin the art, as well as a realization of additional advantages andobjects thereof, by a consideration of the following detaileddescription of the preferred embodiment. Reference will be made to theappended sheets of drawings whcih will first be described briefly.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram illustrating a prior art DNS server systemthat provides IP address data to at least one reception device.

FIG. 2 is a chart illustrating a prior art look-up table used by theprior art DNS server system depicted in FIG. 1.

FIG. 3 is a block diagram illustrating a preferred embodiment of the DNSserver system of the present invention.

FIG. 4 is a chart illustrating a preferred embodiment of the look-uptable used by the DNS server system of the present invention.

FIG. 5 is a flow diagram illustrating how the DNS server system of thepresent invention can provide IP address data to at least one receptiondevice.

FIG. 6 is block diagram illustrating another embodiment of the DNSserver system of the present invention.

FIG. 7 is a chart illustrating another embodiment of the look-up tableused by the DNS server system of the present invention.

FIG. 8 is a flow diagram illustrating how the DNS server system of thepresent invention can provide IP address and content data to at leastone reception device.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

The present invention provides a system and method for using a DNSserver operating on a wide area network to enable an authorizedreception device to receive (or be provided with) restricted contentdata associated with a particular wide area network address and redefinethe domain name associated with a particular wide area network address.In the detailed description that follows, like element numerals are usedto describe like elements illustrated in one or more figures.

In order to best describe the preferred embodiment of the presentinvention, the configuration and operation of a prior art DNS serversystem 100, as depicted in FIG. 1, will first be described. In the priorart DNS server system 100, before a reception device 110 can receivecontent data from a content server 140, the reception device 110 mustusually communicate with a DNS server (e.g., a specified DNS server 120)in order to retrieve the IP address associated with that content server140. This is because the reception device 110 typical requests contentdata by designating a domain name (e.g., “cnn.com”) associated with thecontent data instead of designated the address (e.g., the IP address)where such content data is located. The reason the reception devicerequests content data by designating a domain name (e.g., “cnn.com”) ismainly due to the fact that IP addresses are complex and hard toremember. IP addresses generally take the form of a four byte machinecode (expressed in base ten format), with each byte separated by aperiod. Thus, each IP address resides somewhere between “0.0.0.0” and“255.255.255.255” (as shown in FIG. 2). Domain names, on the other hand,are much easier to recognize (or remember). Domain names generallycontain a “TopLevelDomainName,” a “FullyQualifiedDomainName,” and atleast one “SubDomain,” where each level is separated by a period. Thus,an individual domain name may be expressed as follows: “. . .SubDomain2.SubDomain1.FullyQualifiedDomainName.TopLevelDomainName.” Forexample, in the domain name “cnn.com”, the “com” portion is the“TopLevelDomainName,” whereas the “cnn” portion is the“FullyQualifiedDomainName.” If CNN wated a separate address for news, a“SubDomain1” could be created (e.g., “news.cnn.com”). If CNN furtherwanted a separate address for people in the news, a “SubDomain2” couldbe created (e.g., “people.news.cnn.com”). A further categorization ofinformation could continue if desired (i.e., by creating “SubDomain3,”“SubDomain4,” etc).

Although a reception device 110 could contact any DNS server to receiveIP address information, most reception devices (e.g., 110) areconfigured to communicate with a single specified DNS server 120. Thespecified DNS server 120 is a generally used DNS server (i.e., used bymore than one reception device 110) that can be contacted whenever an IPaddress is not known. Each reception device 110 typically designates atleast one specified DNS server 120 to perform this function. Thereception device 110 communicates with the specified DNS server 120 byproviding the specified DNS server 120 with a particular domain name(e.g., “cnn.com”). The specified DNS then uses a prior art look-uptable, as shown in FIG. 2, to determine the IP address associated withthat particular domain name.

For example, if the reception device 110 is instructed to receivecontent data from “cnn.com,” then the reception device 110 sends an IPaddress request to the specified DNS server 120. The specified DNSserver 120 would search for “cnn.com” in the domain name column 250 ofthe look-up table 200, and provide the reception device 110 with acorresponding IP address (i.e., 207.24.245.278”). If the receptiondevice 110 requests an IP address of a domain name that is not listedunder the domain name column 250 of the look-up table 200, such as“people.news.msnbc.com,” then the specified DNS server 120 may have torequest a corresponding IP address from another DNS server, such as atop level DNS server 130, a fully qualified DNS server 132, or a fullyqualified sub-domain DNS server 134 (see FIG. 1).

In order to provide the reception device 110 with an IP addressassociated with “people.news.msnbc.com,” the specified DNS server 120may begin by retrieving the IP address of “msnbc.com” by requesting suchinformation from the top level (i.e., “com”) DNS server 130, whichcontains the IP addresses of all the “FullyQualifiedDomainNames” (e.g.,“msnbc”) located under a specific “TopLevelDomainName” (i.e., “com”).The specified DNS server 120 may then retrieve the IP address of“news.msnbc.com” by requesting such information from the fully qualified(i.e., “msnbc”)DNS server 132, which contains the IP addresses of allthe “SubDomain1s” (e.g., “news”) located under a specific“FullyQualifiedDomainName” (i.e., “msnbc”) and its accompanying“TopLevelDomainName” (i.e., “com”). The specified DNS server 120 maythen retrieve the IP address of “people.news.msnbc.com” by requestingsuch information from the fully qualified sub-domain (i.e., “news”) DNSserver 134, which contains the IP addresses of all the “SubDomain2s”(e.g., “people”) located under a specific “SubDomain1” (i.e., “news”)and its accompanying “FullyQualifiedDomainName” (i.e., “msnbc”) and“TopLevelDomainName” (i.e., “com”). Once the IP address for“people.news.msnbc.com” is received, it can be provided to the receptiondevice 110. For future reference, the domain name (i.e.,“people.news.msnbc.com”) and its IP address may also be stored in emptymemory cells under the domain name column 250 and IP address column 260within the prior art look-up table 200.

Once the reception device 110 receives the IP address for a particulardomain name, the reception device 110 can send a content data request tothe content server 140 operating on the IP address, where the contentserver request usually takes the form of a uniform resource locator(URL) or a domain name. For example, if the reception device 110 wasinstructed to receive content data from CNN's home page, then thereception device 110 may send a content data request, such as “cnn.com”or “cnn.com/home” to IP address “207.24.245.278” (i.e., the IP addressassociated with “cnn.com”). The content server operating on that IPaddress (e.g., 140) would then provide the reception device 110 with thecontent data references by such a request (e.g., content data associatedwith “cnn.com” or “cnn.com/home”). It should be noted, that with theprior art DNS server system 100, if another reception device (not shown)was to request the IP address associated with “cnn.com” from thespecified DNS server 120, the same IP address would be given. This isbecause the link between the domain name and the IP address (as listedwithin the prior art look-up table 200) is not user specific.

Preferred embodiments of the present invention operates in accordancewith at least one reception device, at least one content server, anauthorization server and a DNS server adapted to communicate with the atleast one reception device, the at least one content server, and theauthorization server. FIG. 3 illustrates a preferred embodiment of theDNS server system 300 of the present invention. In this preferredembodiment, the DNS server system 300 includes a reception device 110, acontent server 140, an authorization server 350 and a DNS server 320communicating through a wide area network 104, such as the Internet 102.It should be appreciated that the reception device 110 depicted in FIG.3 includes, but is not limited to, personal computers, set top boxes,televisions, personal digital assistances (PDAs), mobile phones, and allother physically and wirelessly connected reception devices generallyknown to those skilled in the art. It should further be appreciated thatthe number of reception devices 110, content servers 140, andauthorization servers 350 depicted in FIG. 3 is merely to illustrate howthe present invention operates, and is not intended to further limit thepresent invention.

The DNS server 320 of the DNS server system 300 further includes amemory device 326, a server 322, and a filtering application 324 adaptedto provide the IP address of the content server 140 to the receptiondevice 110 via the wide area network 104, such as the Internet 102. Theauthorization server 350 of the DNS server system 300 further includesan authorization memory 354 and an authorization application 352 adaptedto authenticate the reception device 110. It should be appreciated thatthe memory devices 326, 354 depicted in FIG. 3 include, but are notlimited to, RAM, cache memory, flash memory, magnetic disks, opticaldisks, removable disks, SCSI disks, IDE hard drives, tapes drives, smartcards, and all other types of data storage devices (and combinationsthereof, such as RAID devices) generally known to those skilled in theart. It should also be appreciated that the filtering application 324and the authorization application 352 depicted in FIG. 3 may exist assingle applications, or as multiple applications (locally and/orremotely stored) that operate together to perform their respectiverequired functions as described below. It should be further appreciatedthat the number of components (i.e., server 322, filtering application324, and memory device 326) depicted within the DNS server 320, and thenumber of components (i.e., authorization application 352 andauthorization memory 354) depicted within the authorization server 350are merely to illustrate how the invention operates, and are notintended to further limit the invention. Thus, for example, a DNS server320 having a greater number of (or additional) components is within thespirit and scope of this invention.

The filtering application 324 and/or the authorization application 350operates in conjunction with a preferred embodiment look-up table 400,as depicted in FIG. 4. It should appreciated that the data containedwith the look-up table 400 may (or may not) be not stored in one centrallocation. This data may be stored entirely in the memory device 326,entirely in the authorization memory device 354, or partly in either.For example, storing only the data contained under the domain namecolumn 250, the password required column 440, and the IP address column260 in the memory device 326 is within the spirit and scope of thisinvention. It should be appreciate that this data is shown in a singlefigure (i.e., FIG. 4) merely to describe the operation of the presentinvention, as is not intended to operate as a limitation on theinvention.

The filtering application 324, which operates similarly to prior art DNSserver systems, is further adapted to receive filtered data (i.e.,password-required data and/or pseudo-domain-name data) and authorizationdata in order to provide an IP address of the content server 140 to thereception device 110 via a wide area network 104, such as the Internet102. The filtered data, which may include password-required data, can bestored in a password-required column 440 of the preferred look-up table400. It should be appreciated that the password-required data may beprovided by other entities (i.e., other than the reception device 110)including, but not limited to, a content server 140 or a systemadministrator (not shown) of the DNS server system 300. It should alsobe appreciated that the authorization application 352 may further beadapted to provide the filtering application 324 with password-requireddata. The authorization application 352 may perform this function bybeing adapted to search for restricted content data on a content server(e.g., 140) operating on an IP address that is not already linked topassword-required data. If the authorization application 352 locates anyrestricted content data on that content server, then the authorizationapplication 352 may provide the filtering application 324 withpassword-required data.

If the filtering application 324 receives password-required datapertaining to a particular domain name (e.g., “sex.com”), then thefiltering application is further adapted to store a link between thepassword-required data and the pertaining domain name in the memorydevice 326 (i.e., in the preferred look-up table 400 that may (in-part)be located in the memory device 326). It should be appreciated that thepassword-required data may alternatively pertain to a particular IPaddress, such that a link is stored between the password-required dataand the pertaining IP address. Either form may be acceptable due to thefact that each domain name is already associated with a particular IPaddress. If a reception device 110 subsequently requests an IP addressassociated with the particular domain name, then the filteringapplication 324 is further adapted to provide the reception device 110with the IP address of the particular domain name if the filteringapplication 324 can verify that the reception device 110 is anauthorized reception device. This may be done by receiving (andverifying) the reception device's IP address or an authorized passwordembedded within the reception device's request for an IP address.Alternatively the filtering application 324 is adapted to provide thereception device 110 with an IP address for the authorization server350.

The authorization application 352, which is operating on theauthorization server 350, is adapted to provide the reception devicewith user-verification data, which may include, but is not limited to,request-for-user-identification data (i.e., verifying a user throughtheir user name), request-for-password data (i.e., verifying a userthrough a pre-selected password), or request-for-credit-card data (i.e.,verifying a user through their credit card account). The authorizationapplication 352 is further adapted to receive verification data from thereception device 110, which may include, but is not limited to, passworddata and user-identification data (e.g., user name or credit cardinformation). If the authorization application 352 identifies thereception device 110 as being an authorized reception device (i.e., byverifying the received verification data based upon previously receiveddata or acquired data), then the authorization application is adapted toprovide the filtering application 324 with authorization data (e.g., theIP address of the reception device) and provide the reception device 110with redirect (or refresh) data such that the reception device 110requests the previously requested IP address for the particular domainname (e.g., “sex.com”) from the DNS server 320. The filteringapplication 324 operating on the DNS server 320 is further adapted toprovide the reception device with the requested IP address after theauthorization data has been received. It should be appreciated that theauthorization application 352 may further be adapted to store a linkbetween the particular domain name (or IP address) and theuser-identification data (e.g., “George”, “Michael”). This would allowthe authorization application 352 to receive verification dataspecifically pertaining to a particular domain name (or IP address).

For example, referring to FIG. 4, if password-required data (e.g.,“YES”) is received pertaining to “sex.com”, then the password-requireddata will be stored in the password-required column 440 such that it islinked with the pertaining domain name (i.e., “sex.com”, stored in thedomain name column 250). If a reception device 110 was to subsequentlyrequest an IP address for “sex.com”, the filtering application 324 mayprovide the reception device 110 with the IP address for “sex.com”(i.e., “209.81.54.5”) if the filtering application 324 can verify thatthe reception device 110 is an authorized reception device. Thefiltering application 324 may use the reception device's IP address orpassword data contained directly within an IP address request (i.e.,directly within the domain name provided by the reception device 110) toauthenticate the reception device 110. For example, the filteringapplication 324 may provide the reception device 110 with the IP addressfor “sex.com” if the filtering application 324 receives a request forthe IP address “password.sex.com.”

Alternatively, the filtering application 324 may provide the receptiondevice 110 with an IP address of the authorization server 350. Theauthorization application 352 operating on the authorization server 350is adapted to provide the reception device 110 with user-verificationdata (e.g., request-for-user-identification data or request-for-passworddata). It should be appreciated that this method (and other methodspreviously referred to with regards to the filtering application 324) ofidentifying a user may also include (or operate in conjunction with)tracking/verifying passwords through Pentium III processor Ids,tracking/verifying passwords through MAC address for Ethernet cards,tracking/verifying a user through the measurement of response times(such as “ping” times), tracking/verifying a user through an interactiveconnection with the user's reception device (i.e., through anapplication running on user's reception device, regardless of whetherthe program for the application is independent or web based (i.e., java,javascript, etc.)), tracking/verifying users through a receptiondevice's IP address, and tracking/verifying users by providing theuser's reception device with a “cookie.”

Once the authorization application 352 verifies that the receptiondevice 110 is an authorized reception device (e.g., by receivingpassword data), then the authorization application 352 is furtheradapted to provide the filtering application 324 with authorization data(not shown) and provide the reception device 110 with redirect (orrefresh) data such that the reception device 110 requests the IP addressoriginally requested from the DNS server 120 (i.e., the IP address for“sex.com”). The filtering application 324 operating on the DNS server120 is further adapted to provide the reception device 110 with therequested IP address (i.e., the IP address for “sex.com”, which is“209.81.54.5”) after the authorization data (not shown) has beenreceived.

If the user is identified as a first time user, the reception device 110may be provided with request-for-credit-card data (i.e., verifying auser through their credit card account), which may require the user toprovide the authorizing application 352 with user-identification dataand password data (i.e., for future access). The user-identificationdata is then stored in an empty cell located under the useridentification column 410 of the preferred look-up table 400, and thepassword data is stored in an empty cell located under the passwordcolumn 470 of the preferred look-up table 400. With regard to the domainnames that do not require a password (e.g., “cnn.com”, “microsoft.com”,and “msnbc.com”), the filtering application 324 may either affirmativelyrecognize that no password is required by linking no-password-requireddata (e.g., “NO”) to the particular domain name, or merely understandthat no password is required when password-required data (e.g., “YES”)is not linked to a particular domain name.

Although the authorization application 324 might provideuser-verification data to a reception device 110 that previouslyrequesting an IP address for a password-required required domain name(e.g., “sex.com”), it should be appreciated that the reception device110 may also directly request user-verification data (e.g.,request-for-credit-card data, request for user-identification data,request-for-password data, etc.) from the authorization server 350. Thiswould allow the reception device 110 to be verified as an authorizedreception device before the reception device 110 requested an IP addressfor a password-required domain name (e.g., “sex.com”).

FIG. 5 is a flow chart illustrating the steps that the DNS server systemof the present invention may perform when a request for an IP address isreceived. More particularly, and beginning at step 502, theauthorization server may receive a request from a reception device foruser-verification data (such as request-for-password data) at step 504.The authorization server responds to such a request by providinguser-verification data (such as request-for-password data) to thereception device at step 506. The authorization server may then receivepassword data from the reception device at step 508, where theauthorization server should determine whether such password data isvalid at step 510. If the password data is valid (i.e., theauthorization server provides authorization data to the DNS server),then a subsequent request for an IP address (at the DNS server) will begranted at step 516, which completes the process at step 518.Alternatively, if the password data is invalid, then a subsequentrequest for an IP address (at the DNS server) may be received at step512. The DNS server should determine whether the IP address (or acorresponding domain name) is linked to password-required data at step514. If the IP address is linked to password-required data, then therequest is denied at step 530, which completes the process at step 518.If the IP address is not linked to password-required data (or is linkedto no-password-required data), the request is granted at step 516, whichcompletes the process at step 518.

Alternatively, beginning at step 502, the DNS server may receive arequest from a reception device for an IP address at step 520. The DNSserver must then determine whether that IP address (or a correspondingdomain name) is linked to password-required data at step 522. If the IPaddress is not linked to password-required data (or is linked tono-password-required data), then the request is granted at step 532,which completes the process at step 518. If the IP address is linked topassword-required data, then the authorization server should provide thereception device with user-verification data (such asrequest-for-password data) at step 524. The authorization server maythen receive password data from the reception device at step 526, wherethe authorization server should determine whether such password data isvalid at step 528. If the password data is valid (i.e., theauthorization server provides authorization data to the DNS server),then the request for an IP address (at the DNS server) is granted atstep 532, which completes the process at step 518. If the password datais invalid, then the request (at the DNS server) is denied at step 530,which completes the process at step 518.

Referring back to FIGS. 3 and 4, the filtering application 324 mayfurther be adapted to receive pseudo-domain-name data, which can bestored in a pseudo-domain name column 430 of the preferred look-up table400. It should be appreciated that the pseudo-domain-name data may beprovided by other entities (other than the reception device 110)including, but not limited to, a content server 140 or a systemadministrator (not shown) of the DNS server system 300. If the filteringapplication 324 receives pseudo-domain-name data pertaining to aparticular domain name, then the filtering application 324 is furtheradapted to store a link between the pseudo-domain-name and theparticular domain name in the memory device 326 (i.e., in the preferredlook-up table 400 that may be located (in-part) in the memory device328). It should be appreciated that the pseudo-domain-name data mayalternatively pertain to a particular IP address, such that a link isstored between the pseudo-domain-name data and the pertaining IPaddress. Either form may be acceptable due to the fact that each domainname is already associated with a particular IP address.

If the filtering application 324 receives pseudo-domain-name data (e.g.,“news”) pertaining to a particular domain name (e.g., “cnn.com”), thenthe filtering application 324 is further adapted to store a link betweenthe pseudo-domain-name data and the pertaining domain name in the memorydevice 326. If a reception device 110 subsequently requesting an IPaddress for the pseudo-domain-name data (e.g., “news”), the receptiondevice 110 will be provided with the IP address of the particular domainname (e.g., “cnn.com”). Alternatively, if the filtering application 324has not received pseudo-domain-name data (e.g., “news”) pertaining to aparticular domain name, then the filtering application 324 may beadapted to provide the reception device 110 with an IP address for theauthorization server 350. The authorization application 352 operating onthe authorization server 350 may be adapted to provide the receptiondevice 110 with user-verification data (as discussed above) in order tolink the pseudo-domain-name data (e.g., “news”) to a particular user.This allows the authorization application 352 (together with thefiltering application 324) to subsequently provide that particular user(e.g., “George”) with an IP address for the particular domain name(e.g., “cnn.com”) when the user requests an IP address for thepseudo-domain-name data (e.g., “news”).

For example, referring to FIG. 4, if pseudo-domain-name data “news” isreceived pertaining to “cnn.com”, then the pseudo-domain-name data“news” will be stored in the pseudo domain name column 430 such that itis linked with the pertaining domain name (i.e., “cnn.com”). If a user(e.g., “George” or “Michael”) subsequently requesting an IP address for“news,” they would be provided with the IP address of “cnn.com” (i.e.,“207.24.245.178”). Alternatively, if this data (i.e., pseudo-domain-namedata) was not provided to the filtering application 324, then thefiltering application 324 would provide the reception device 110 with anIP address for the authorization server 350. This authorizationapplication 352 operating on the authorization server 350 is thenadapted to provide the reception device 110 with user-verification data(as discussed above) in order to link the pseudo-domain-name data (i.e.,“news”) previously stored to a particular use (i.e., “George”). Thisallows the authorization application 352 (together with the filteringapplication 324) to subsequently provide “George” the IP address for“cnn.com” (i.e., 207.24.245.176”) when “George” requests the IP addressfor “news”. This also would allow the authorization application 352(together with the filtering application 324) to provide “Michael” withthe IP address for “msnbc.com” (i.e., “207.46.232.38”) when “Michael”requests the IP address for “news” (assuming “Michael” set up a linkbetween “news” and “msnbc.com”). Similarly, the authorizationapplication 352 (together with the filtering application 324) mayprovide “George” with the IP address for “microsoft.com” (i.e.,“213.199.144.151”) when “George” requests the IP address for “software”(again, assuming “George” set up a link between “software” and“microsoft.com”).

With regard to domain names that do not have a correspondingpseudo-domain-name (e.g., “sex.com”), the filtering application 324 mayeither affirmatively recognize that no pseudo-domain-name is linked to aparticular domain name by linking no-pseudo-linking data (e.g., “NO”) tothe particular domain name, or merely understand that nopseudo-domain-name is linked to a domain name when pseudo-linking data(e.g., “YES”) is not linked to a particular domain name.

The authorization application 352 may further be adapted to receivepseudo-linked data, which can be stored in the pseudo-link column 420 ofthe look-up table 400. The pseudo-link data may be used by theauthorization application 352 to link pseudo-domain-name data toparticular domain names. The authorization application 352 may furtherbe adapted to receive circumventing data in order to temporarily masksthe pseudo-linked data. This would require the reception device 110 toprovide the DNS server 320 the actual domain name in order to receivethe IP address associated with the actual domain name.

FIGS. 6 and 7, respectively, illustrate another embodiment of the DNSserver system 600 of the present invention and an alternative look-uptable 700 stored on the memory device 326 operating on the DNS server320. In this embodiment, the authorization application 354, which mayoperate in the same manner as discussed above, is further adapted toprovide encoded data to the reception device 110 after the receptiondevice 110 has provided verification data, such that the receptiondevice 110 can subsequently provide the encoded data to a content server140 operating on a requested IP address. Although it should beappreciated that this encoded data may be encoded into any data that issubsequently provided to the content server 140 (such as the user's IPaddress, the time of access, etc.) it is a preferred method of thisinvention to encoded the uniform resource locator (URL) (which is theaddress that defines the route to a particular file) such that it pointsto an alternate file on the content server 140. The URL is encoded (orredirected) such that it (or a coded token within it) can be recognized(or searched for) by a content providing application 142 operating onthe content server 140.

For example, referring to FIG. 7, “sex.com” is linked to a particularuser (i.e., “George”) and password-required data (e.g., “YES”). Thus“George” (once identified) will have to provide the authorizationapplication 352 with password data (or some other authorization data) inorder to receive the IP address associated with “sex.com” (i.e.,209.81.54.5”). If “George” provides invalid password data, the filteringapplication may still provide “George” with the IP address associatedwith “sex.com” (i.e., “209.81.54.5”), however, the authorizationapplication 352 will further inform “George” (or his reception device110) that the content data he is looking for has moved, and provide himwith a predetermined redirected URL (i.e., “filtered.sex.com,” which isstored under the redirected domain name column 790 of the look-up table700).

By providing the user (i.e., “George”) with the IP address for “sex.com”(i.e., “209.81.54.5”), the user is then enabled to communicate with thecontent server 140 operating on the “sex.com” IP address. However,because the request for content data will contain the redirected URL,the content providing application 142 operating on the content server140 will detect the redirected URL, either because the redirected URLpoints to a recognizable filtered file, or because the content providingapplication 142 is adapted to search the URL for a predefined word orcode (e.g., “filtered”). This allows the content providing application142 operating on the content server 140 to filter content data before itis provided to any reception device (e.g., 110) that previously receivedIP address information from the DNS server 320 of the present invention.

To prevent a user from easily circumventing the DNS server system 600,the content providing application 142 may further be adapted to denyrequests for content data where the request contains an IP address.Thus, if a user typed an IP address directly into a browser application(not shown), the browser would request content data directly from acontent server operating on that IP address (i.e., circumventing the DNSserver). However, the content providing application 142 can detectwhether the request is a URL (or domain name) request or an IP addressrequest. Thus, if the content providing application 142 detects an IPaddress within the request for content data (i.e., indicating that theDNS server was circumvented) then the request may be denied.

FIG. 8 is a flow chart illustrating how an IP address and content dataresiding at that IP address may be provided to a reception device. Moreparticularly, and beginning at step 802, the DNS server may receive arequest from a reception device for an IP address at step 804. The DNSserver should then determine whether the requested IP address (or domainname) is linked to password-required data at step 506. If the IP address(or domain name) is not linked to password-required data (or is linkedto no-password-required-data), then the DNS server provides thereception device with the requested IP address at step 808. Thereception device then provides a URL (i.e., content data) request to acontent server operating on the IP address at step 812. The contentserver then provides the reception device with content data based uponthe URL request at step 816, which completes the process at step 818.Alternatively, if the IP address (or domain name) is linked topassword-required data, then the authorization server provides thereception device with a redirected URL and the DNS server provides thereception device with the requested IP address at step 810. Thereception device then provides a redirected URL (i.e., content data)request to a content server operating on the IP address at step 814. Thecontent server then provides the reception device with content databased upon the redirected URL request at step 816, which completes theprocess at step 818.

In another embodiment, referring back to FIGS. 6 and 7, theauthorization application 352 provides the reception device 110 with aredirected URL only after a valid password has been entered. This allowsthe content providing application 142 operating on the content server140 to recognize different levels of security, and thus providedifferent levels of content data.

For example, a variety of content data may be residing on a contentserver (e.g., 140) operating on an IP address associated with the domainname “adult.com” (i.e., “216.99.40.3”), where the content data can beclassified at “rated G,” “rated PG,” “rated R,” and “rated X.” To enablecertain reception devices (or users) to receive content data that doesnot exceed a predetermined rating level, the content providingapplication 142 is adapted to recognize a level one through four rating,where level one corresponds to “G” rated content data and level fourcorresponds to “X” rated content data. Thus, if “Michael”, request theIP address associated with “adult.com” (i.e., “216.99.40.3”), thefiltering application 324 will provide “Michael” with the requested IPaddress, along with a redirected URL (i.e., “level3.adult.com”). Thisredirected URL (i.e., “level3.adult.com”) can be used by the contentproviding application 142 operating on the content server 140 to provide“Michael” with content data that does not exceed “rated R” content data.

The content providing application 142 operating on the content server140 may further be adapted to reward the reception device 110 for usingthe DNS server (or a pseudo-domain-name) to locate the IP address of thecontent server 140. It should be appreciated that these rewards mayinclude redeemable points, monetary kickbacks, discounted servicesand/or products or any other savings or special benefits generally knownto those skilled in the art.

Having thus described a preferred embodiment of a system and method forfiltering content data over a wide area network, it should be apparentto those skilled in the art that certain advantages of the within systemhave been achieved. It should also be appreciated that variousmodifications, adaptations, and alternative embodiments thereof may bemade within the scope and spirit of the present invention. The inventionis further defined by the following claims.

1-64. (canceled)
 65. A method for controlling access to IP addresses forcontent using a domain name system, comprising the steps of: receivingrequests at a name server from a plurality of network devices, whereinthe name server is configured to receive requests for content from theplurality of network devices via a wide area network and is operablyassociated with a first memory holding a domain name table, the domainname table listing IP addresses for network content servers inassociation with domain names and with device identifiers for thenetwork devices, and wherein each request comprises a domain name and adevice identifier; determining, for ones of the requests, correspondingones of authorized network addresses each associated with a deviceidentifier and a requested domain name in the domain name table, foreach request in which the device identifier in the domain name tablematches a device identifier included in the request, wherein theauthorized network addresses comprise IP addresses; and responding tothe requests by providing the authorized network addresses to requestingones of the plurality of network devices.
 66. The method of claim 65,further comprising determining, for other ones of the requests, defaultnetwork addresses each associated with a requested domain name in thedomain name table and not with a device identifier, for each request inwhich the device identifier included in the request data does not matcha device identifier associated with a domain name in the domain nametable, and responding to the requests by providing the default networkaddresses to requesting ones of the plurality of network devices. 67.The method of claim 66, fully comprising operating an authorizationserver in communication with the name server and with the plurality ofnetwork devices via the wide area network, wherein the authorizationserver is operably associated with a second memory holding anauthorization application, the authorization application operable toverify user access privileges for each of the requests.
 68. The methodof claim 66, further comprising obtaining authorization data from theplurality of network devices for verifying user access privileges. 69.The method of claim 68, further comprising providing the authorizationdata to the name server.
 70. The method of claim 68, further comprisingobtaining payment information from users requesting access to specifiedcontent.
 71. The method of claim 68, further comprising obtaininginformation from users, the information selected from the groupconsisting of a user password and the device identifier.
 72. The methodof claim 68, further comprising providing the default network address inresponse to requests for which authorization data indicates that theuser is not authorized to receive unfiltered information.
 73. The methodof claim 68, further comprising providing a message indicating thataccess to requested content is not authorized in response to requestsfor which the authorization data indicates that the user is notauthorized to receive requested information.
 74. The method of claim 68,further comprising providing the default network address in response torequests for which authorization data matching the authorization data inthe domain name table is not reached.
 75. The method of claim 65,further comprising rewarding users for designating the name server astheir default name server for handling domain name requests.
 76. Themethod of claim 65, further comprising communicating an authorizationstatus to content servers via redirected domain names associated withthe domain names in the domain name table.
 77. A system for directingaccess to content over a wide area network, comprising: a name serverconfigured to receive requests for content from a plurality of networkdevices via a wide area network, wherein the name server is operablyassociated with a first memory holding a domain name table, and whereinthe domain name table associates IP addresses for network contentservers with domain names and device identifiers, the name servercomprising instructions operable for: receiving requests at a nameserver from a plurality of network devices, wherein each requestcomprises a domain name and a device identifier; determining, for onesof the requests, corresponding ones of authorized network addresses eachassociated with a device identifier and a domain name in the domain nametable, for each request in which the device identifier in the domainname table matches a device identifier included in the request, whereinthe authorized network addresses comprise IP addresses; and respondingto the requests by providing the authorized network addresses torequesting one of the plurality of network devices.
 78. The system ofclaim 77, wherein the name server further comprises instructions fordetermining, for other ones of the requests, default network addresseseach associated with a requested domain name in the domain name tableand not with a device identifier, for each request in which the deviceidentifier included in the request does not match a device identifierassociated with a domain name in the domain name table, and respondingto the requests by providing the default network addresses to requestingones of the plurality of network devices.
 79. The system of claim 78,further comprising an authorization server in communication with thename server and with the plurality of network devices via the wide areanetwork, wherein the authorization server is operable to obtainauthorization data from the plurality of network devices for verifyinguser access privileges.
 80. The system of claim 78, wherein theauthorization server is further operable to provide authorization datato the name server.
 81. The system of claim 78, wherein theauthorization server is further operable to obtain payment informationfrom users requesting access to specified content.
 82. The system ofclaim 78, wherein the authorization server is further operable to obtaininformation from users, the information selected from the groupconsisting of a user password and the device identifier.
 83. The systemof claim 79, wherein the instructions of the name server are furtheroperable to provide the default network address in response to requestsfor which the authorization data indicates that the user is notauthorized to receive unfiltered information.
 84. The system of claim79, wherein the instructions of the name server are further operable toprovide a message indicating that access to requested content is notauthorized in response to requests for which the authorization dataindicates that the user is not authorized to receive requestedinformation.
 85. The system of claim 79, wherein the instructions of thename server are further operable to provide the IP address together withthe redirected domain name in response to requests for whichauthorization data matching the authorization data in the domain nametable is not received.
 86. The system of claim 77, wherein theinstructions of the name server are further operable to reward users fordesignating the name server as their default name server for handlingdomain name requests.
 87. The system of claim 77, further comprising atleast one content server in communication with the name server, thecontent server configured to determine a user authorization status basedon redirected domain names provided by the name server as associatedwith domain names in the domain name table.